Repository navigation
fix(sidebar): keep the workspace list its full height in Safari - #3295
Merged
Merged
Conversation
The PCs section is a column flexbox with a 0 flex basis and a max-content cap (Sidebar.css). WebKit sizes that max-content from the 0 basis, so the section stayed at its minimum, one row, and the list scrolled inside it. A one-row grid gets the same heights in WebKit as Chromium already drew.
…tays a grid The grid pin fails on main in Chromium; the height checks fail on main in WebKit (46px of 270px), where CI does not run. Same checks as #3255.
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 45 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. |
Owner
Author
|
Reviews at 2f69690:
|
Owner
Author
|
Merge note (merge pass) at head 2f69690:
|
This was referenced Nov 7, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #3267
Fixes #3217
Thanks to @Haeminway1 (#3255) and @odfalik (#3218), who found the same cause and the same kind of fix; this PR keeps #3255's grid and its layout assertions, and ships it now because users of Safari hit it on 0.5.0.
What
In Safari the sidebar's workspace list (the PCs section) stayed one row tall, with a scrollbar beside it and empty space under it, since the PCs/Agents resize line (#2944).
The PCs section is a column flexbox with a
0flex basis and amax-contentcap (Sidebar.css:flex: 1000 1 0; max-height: var(--section-max, max-content)). WebKit sizes thatmax-contentfrom the0basis, so the cap came out at nothing and the section's minimum (top padding plus one row) won. Chromium sizes it from the rows.The section is now a one-row grid (
grid-template-rows: minmax(0, 1fr)) holding the scrolling list. Itsmax-contentis its rows in both engines, so the flex sizing, the default split and the resize line work as before. Chromium draws exactly the same heights as before.No new controls; no behaviour change outside Safari/WebKit.
Evidence
Demo app at 1280x844,
.pcs-sidebar/.machine-list/ list scroll height /.agents-sidebarin px:WebKit was Playwright 1.65's WebKit (in
mcr.microsoft.com/playwright:v1.65.0-noble), the engine Safari uses; main's numbers match the reporter's screenshot (one workspace and a scrollbar). On main, WebKit draws one workspace row and a scrollbar with empty space under it; with this PR it draws every row, as Chromium does.Tests
scripts/sidebar-split-demo-regression.ts(checks taken from #3255):displayisgrid: fails on main in Chromium, which CI runs ("the PCs section stays a grid, or Safari draws its list one row tall");Run in WebKit too (a scratch copy pointed at Playwright 1.63's WebKit server, 1280 light/dark, both orders; not committed, CI has no WebKit): on main's CSS it fails with "the PCs' list takes its rows' height or the room it has (46/270px)"; with this PR all four cases pass.
Validation
In the CI runner image (
herdr-ci-runner:local) at 68e9c27 (the fix):bun run check fastpassed, andbun run buildplus the sidebar browser regressionshide-pc,sidebar-agent-tree,sidebar-declutter,sidebar-filter,sidebar-heads,sidebar-machine-layout,sidebar-peek,sidebar-spacing,sidebar-split-accessandsidebar-splitall passed (withUI_EVIDENCE_DIR). At 2f69690 (the test commit):bun run check fast,sidebar-splitandsidebar-split-accesspassed again.Not run: the integration suite and full
check(CSS only).